package com.steel.yfmall.cloud.assistant.dto.para.oms;

import com.steel.yfmall.cloud.components.utils.base.BaseManagerSearchBean;
import com.steel.yfmall.cloud.components.utils.base.BaseServiceSearchBean;
import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

/**
 * 订单主信息
 *
 * @author jia chang bao
 * @date 2021/1/9 15:15
 */
@Data
public class ParaMasterOrderInfo extends BaseServiceSearchBean {
    private static final long serialVersionUID = 4700475922406361803L;
    /**
     * master_order_sn 主订单编号，唯一键
     */
    private String masterOrderSn;

    /**
     * 主订单编号 集合
     */
    private List<String> masterOrderSnList;

    /**
     * trans_type 交易类型 1：款到发货
     */
    private Integer transType;

    /**
     * order_type 订单类型 0，现货订单 10，预售订单
     */
    private Integer orderType;

    /**
     * relating_original_sn 货单关联的原订单号
     */
    private String relatingOriginalSn;

    /**
     * relating_return_sn 货单关联退单编号
     */
    private String relatingReturnSn;

    /**
     * relating_remoney_sn 货单关联退款单号
     */
    private String relatingRemoneySn;

    /**
     * user_name 用户名
     */
    private String userName;

    /**
     * company_code 下单公司编码
     */
    private String companyCode;

    /**
     * company_name 下单公司公司名称
     */
    private String companyName;

    /**
     * order_status 订单状态 0，未确认；1，已确认；2，已取消；3，完成；）
     */
    private Integer orderStatus;

    /**
     * pay_status 支付总状态 0，未付款；1，部分付款；2，已付款；3，已结算）
     */
    private Integer payStatus;

    /**
     * ship_status 发货总状态 0，未发货；1，备货中；2，部分发货；3，已发货；4，部分收货；5，客户已收货）
     */
    private Integer shipStatus;

    /**
     * contract_status 合同状态 0 未生成  1已生成  2已取消
     */
    private Integer contractStatus;

    /**
     * out_order_status 外部订单状态  00:建立，01:订单变更中，05:订单提交，07:订单核准，15:Lineup失败，16:Lineup成功，19: 订单确认，21:订单结案，XX: 注记删除
     */
    private String outOrderStatus;

    /**
     * lock_status 订单锁定状态（0，未锁定；1，已锁定）
     */
    private Integer lockStatus;

    /**
     * question_status 问题单状态 （0 否  1 是）
     */
    private Integer questionStatus;

    /**
     * notice_status 通知收款状态 （0 否  1 是）
     */
    private Integer noticeStatus;

    /**
     * split_status 拆单状态 0：未拆单；1：拆单中；2：已拆单；3：重新拆单
     */
    private Integer splitStatus;

    /**
     * split_time 拆单时间
     */
    private Date splitTime;

    /**
     * create_time 订单生成时间
     */
    private Date createTime;

    /**
     * confirm_time 订单确认时间
     */
    private Date confirmTime;

    /**
     * signing_time 签收时间
     */
    private Date signingTime;

    /**
     * confirm_ship_time 订单确认收货时间
     */
    private Date confirmShipTime;

    /**
     * finish_time 订单完成时间
     */
    private Date finishTime;

    /**
     * clear_time 订单结算时间
     */
    private Date clearTime;

    /**
     * question_time 设为问题单时间
     */
    private Date questionTime;

    /**
     * lock_time 订单锁定时间
     */
    private Date lockTime;

    /**
     * update_time 订单最后更新时间
     */
    private Date updateTime;

    /**
     * notice_time 通知收款时间
     */
    private Date noticeTime;

    /**
     * out_order_sn 外部-中冠订单编号
     */
    private String outOrderSn;

    /**
     * out_contract_sn 外部-中冠合同编号
     */
    private String outContractSn;

    /**
     * out_product_classify_code 外部-一级分类编码
     */
    private String outProductClassifyCode;

    /**
     * total_delivery_cycle 订单总货期天数
     */
    private Integer totalDeliveryCycle;

    /**
     * delivery_cycle_time 总货期时间
     */
    private Date deliveryCycleTime;

    /**
     * promotion_ids 参加了哪些促销编号
     */
    private String promotionIds;

    /**
     * promotion_titles 参加促销的名字(多个)
     */
    private String promotionTitles;

    /**
     * referer 订单的来源媒体
     */
    private String referer;

    /**
     * clear_status 关联结算单状态 0未关联  1已关联
     */
    private Integer clearStatus;

    /**
     * loading_batch_code 装载批次信息
     */
    private String loadingBatchCode;

    /**
     * pay_service_price 支付手续费用
     */
    private BigDecimal payServicePrice;

    /**
     * shipping_total_fee 配送总费用
     */
    private BigDecimal shippingTotalFee;

    /**
     * insure_total_fee 保价总费用
     */
    private BigDecimal insureTotalFee;

    /**
     * pay_total_fee 支付总费用
     */
    private BigDecimal payTotalFee;

    /**
     * total_payable 应付款总金额
     */
    private BigDecimal totalPayable;

    /**
     * extra_services_price 增值服务价格
     */
    private BigDecimal extraServicesPrice;

    /**
     * goods_amount 商品总金额
     */
    private BigDecimal goodsAmount;

    /**
     * total_fee 订单总金额
     */
    private BigDecimal totalFee;

    /**
     * total_settlement_price 订单结算总价
     */
    private BigDecimal totalSettlementPrice;

    /**
     * settlement_difference_price 订单结算差额
     */
    private BigDecimal settlementDifferencePrice;

    /**
     * money_paid 已付款金额
     */
    private BigDecimal moneyPaid;

    /**
     * surplus 订单使用余额
     */
    private BigDecimal surplus;

    /**
     * bonus_ids 使用红包ID
     */
    private String bonusIds;

    /**
     * bonus_price 使用红包金额
     */
    private BigDecimal bonusPrice;

    /**
     * goods_qty 订单商品总数
     */
    private Integer goodsQty;

    /**
     * goods_weight 商品总重量
     */
    private BigDecimal goodsWeight;

    /**
     * clear_goods_weight 实际商品结算重量
     */
    private BigDecimal clearGoodsWeight;

    /**
     * discount 订单商品折扣
     */
    private BigDecimal discount;

    /**
     * integral 使用积分数量
     */
    private BigDecimal integral;

    /**
     * integral_money 使用积分金额
     */
    private BigDecimal integralMoney;

    /**
     * postscript 订单附言，由用户提交订单前填写
     */
    private String postscript;

    /**
     * to_buyer 商家给客户的留言,当该字段有值时可以在订单查询看到
     */
    private String toBuyer;

    /**
     * cancel_code 取消原因编码
     */
    private String cancelCode;

    /**
     * cancel_reason 取消原因描述
     */
    private String cancelReason;

    /**
     * is_push_system 是否推送外部系统
     */
    private Integer isPushSystem;

    /**
     * staff_code 业务员编码
     */
    private String staffCode;

    /**
     * staff_name 业务员名称
     */
    private String staffName;

    /**
     * sale_area_code 业务销售区域编码
     */
    private String saleAreaCode;

    /**
     * sale_area_name 业务销售区域名称
     */
    private String saleAreaName;

    /**
     * source 0:未处理2:线上订单
     */
    private Integer source;

    /**
     * is_pick_up 是否为自提单 0 配送 1自提
     */
    private Integer isPickUp;

    /**
     * pree_occupy 0:未占用;1:已占用库存
     */
    private Integer preeOccupy;

    /**
     * unit_title 计价单位 t/吨  kg/千克 g/克
     */
    private String unitTitle;

    /**
     * sales_branch_code 销售分公司编码
     */
    private String salesBranchCode;

    /**
     * sales_branch_name 销售分公司名称
     */
    private String salesBranchName;

    /**
     * site_code 订单平台渠道
     */
    private String siteCode;

    /**
     * channel_code 订单来源
     */
    private String channelCode;

    /**
     * shop_name 订单店铺名称
     */
    private String shopName;

    /**
     * user_mobile 注册手机号码
     */
    private String userMobile;

    /**
     * ship_cancel_status 通知撤单状态 0：不通知  1：通知
     */
    private Integer shipCancelStatus;

    /**
     * pallet_merchant 托盘客商信息
     */
    private String palletMerchant;

    /**
     * instead_user_name 代下单用户信息
     */
    private String insteadUserName;

    /**
     * customer_contract_num 框架合同编码
     */
    private String customerContractNum;

    /**
     * product_type_no 产品形态
     */
    private String productTypeNo;

    /**
     * settlement_type 结算方式(1锁价2月末定价)
     */
    private Integer settlementType;

    /**
     * settlement_ticket 结票方式(D:一票结、E:两票结)
     */
    private String settlementTicket;

    /**
     * protocol_type 协议类型:1平台协议,2客户协议
     */
    private Integer protocolType;

    /**
     * version 订单版本批次号
     */
    private Integer version;
}
